<?php
/*
    Download page
    Copyright (C) 2015, 2016  Leah Rowe <info@minifree.org>

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU Affero General Public License as
    published by the Free Software Foundation, either version 3 of the
    License, or (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU Affero General Public License for more details.

    You should have received a copy of the GNU Affero General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/
	header('Content-type: text/html; charset=utf-8');
	ob_start();
	include_once "../common/variables.php";
	include_once "../common/functions.php";
?>
<!DOCTYPE html>
<html>
<head>
	<link rel="stylesheet" type="text/css" href="../common/css/main.css" />
	<title><?php echo gettext("Download libreboot"); ?></title>
</head>

<body>

	<div>

		<h1><?php echo gettext("Download libreboot (stable releases)"); ?></h1>

			<p>
				<strong>
					<?php echo gettext("The latest stable release is"); ?> <?php echo $lbRelease[0][0][0]; ?>,
					<?php echo gettext("released on"); ?> <?php echo $lbRelease[0][0][1]; ?> and can be
                    found at <a href="#https">#https</a>.
				</strong> <a href="../"><?php echo gettext("Back to home page"); ?></a>
			</p>
            <p>
				If you're more interested in libreboot development, go to the <a href="../git/">libreboot development page</a>, which
				also includes links to the Git repositories. Visit <a href="#tasks">#tasks</a> for tasks currently on the TODO list.
			</p>

            <h2>GPG signing key</h2>
                <p>
                    See <a href="../gpg/">../gpg/</a> for info.
                </p>
			<h2>Do you have a mirror?</h2>
				<p>
					Let us know! We will add it here. Instructions for how to mirror libreboot
					releases can be found <a href="../rsync/">here</a>.
				</p>

            <h2 id="https">HTTPS mirrors</h2>
                <p>
                    These mirrors are recommended, since they use TLS (https://) encryption.
                </p>
<?php
                echo mirrorList($lbHttpsMirror, gettext("HTTPS mirrors not added yet."),0,count($lbHttpsMirror));
?>
			<h2 id="http">HTTP mirrors</h2>
                <p>
                    WARNING: these mirrors are non-HTTPS which means that they are unencrypted. Your traffic could be subject
                    to interference by adversaries. Make especially sure to check the GPG signatures, assuming
                    that you have the right key. Of course, you should do this anyway, even if
                    using HTTPS.
                </p>
<?php
				/* show HTTP mirrors */
				echo mirrorList($lbHttpMirror, gettext("HTTP mirrors not added yet."),0,count($lbHttpMirror));
?>
			<h2 id="ftp">FTP mirrors</h2>
                <p>
                    WARNING: FTP is also unencrypted, like HTTP. The same risks are present.
                </p>
<?php
				/* show FTP mirrors */
				echo mirrorList($lbFtpMirror,gettext("FTP mirrors not added yet."),0,count($lbFtpMirror));
?>
	</div>

	<div>
		<h1 id="unstable">Download libreboot (unstable/beta releases)</h1>
            
            <p style="font-size:120%">
				<strong>WARNING: there is no guarantee that these releases will work. They may even render your system unusable (brick it).
				Proceed with caution.</strong>
			</p>
			<p>
				<a href="../beta/">Download the unstable releases here</a> (snapshot archives, with ROM images compiled).
                This is useful if you want to help with testing for bugs/regressions before release, or if you just
                want to run the latest version of libreboot compiled from the current git repository.
			</p>
            <p>
				Over time, stable libreboot release cycles have become much slower, due to more boards being supported
				and more work being done, which means a lot more testing/fixing needs to be done before each release. 
				Therefore, we now offer unstable releases in between stable releases.
				These releases are updated fairly regularly, built from the latest version of libreboot
				from the <a href="../git/">git repository</a>.
			</p>
            <h2 id="tasks">Work to do for the next stable release of libreboot (<a href="#tasks">#tasks</a>):</h2>
                <p>
                    Bring all boards up to the latest coreboot revision, especially gm45
                </p>
                <p>
                    Implement a code of conduct for libreboot IRC channel and mailing lists.
                    jxself in IRC linked <a href="http://contributor-covenant.org/">http://contributor-covenant.org/</a>
                    - TODO: read it
                </p>
                <p>
                    Document SPI flashing on the RPi. The GPU firmware has been replaced now
                    - see <a href="https://github.com/christinaa/rpi-open-firmware/issues/9">https://github.com/christinaa/rpi-open-firmware/issues/9</a>
                    - see <a href="https://github.com/christinaa/rpi-open-firmware/tree/develop">https://github.com/christinaa/rpi-open-firmware/tree/develop</a>
                    - a user reported that there is still a low-level bootloader that is non-free in this device, but
                    it might be possible to use RPi in full freedom in the near future. TODO: look into this.
                    Contact <strong>alyssa</strong> in the libreboot IRC channel.
                </p>
                <p>
    				Go to the <a href="../git/">libreboot development page</a>, which
    				also includes links to the Git repositories. This shows how to submit patches.
    			</p>
                <p>
                    Merge paulk's new build system, and start integrating u-boot - integrate support for eoma68
                </p>
                <p>
                    reconsider bug tracker (e.g. phabricator), code review (gerrit) and build bot (reacts).
                </p>
                <p>
                    (For leah) send swiftgeek dead motherboards from many libreboot supported thinkpads
                    and battery PCBs for EC related work.
                </p>
                <p>
                    Merge the new build system after the next release. 
                    <a href="http://git.code.paulk.fr/gitweb/?p=libettereboot.git;a=summary">http://git.code.paulk.fr/gitweb/?p=libettereboot.git;a=summary</a>
                </p>
                <p>
                    reproducible builds.
                    E.g. look at this X200 build (NOTE: this is coreboot, *NOT* libreboot):
                    <a href="https://tests.reproducible-builds.org/coreboot/coreboot.html">https://tests.reproducible-builds.org/coreboot/coreboot.html</a>
                </p>
                <p>
                    re-write ich9gen/ich9deblob to be portable. It currently assumes endiannesses, uses bitfields, etc.
                    It's not portable at all, but works on x86 and little-endian ARM in most cases.
                </p>
	</div>

<?php
	include "../common/ccs.php";
	include "../common/footer.php";
?>

</body>
</html>
<?php
	$strHtml = ob_get_clean();
	echo miniHtml($strHtml);
?>
